home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 60 / IOPROG_60.ISO / soft / c++ / gsl-1.1.1-setup.exe / {app} / src / cblas / test_swap.c < prev    next >
Encoding:
C/C++ Source or Header  |  2002-04-18  |  7.4 KB  |  312 lines

  1. #include <gsl/gsl_test.h>
  2. #include <gsl/gsl_ieee_utils.h>
  3. #include <gsl/gsl_math.h>
  4. #include <gsl/gsl_cblas.h>
  5.  
  6. #include "tests.h"
  7.  
  8. void
  9. test_swap (void) {
  10. const double flteps = 1e-4, dbleps = 1e-6;
  11.   {
  12.    int N = 1;
  13.    float X[] = { 0.539f };
  14.    int incX = 1;
  15.    float Y[] = { -0.262f };
  16.    int incY = -1;
  17.    float expected1[] = { -0.262f };
  18.    float expected2[] = { 0.539f };
  19.    cblas_sswap(N, X, incX, Y, incY);
  20.    {
  21.      int i;
  22.      for (i = 0; i < 1; i++) {
  23.        gsl_test_rel(X[i], expected1[i], flteps, "sswap(case 88)");
  24.      }
  25.    };
  26.    {
  27.      int i;
  28.      for (i = 0; i < 1; i++) {
  29.        gsl_test_rel(Y[i], expected2[i], flteps, "sswap(case 89)");
  30.      }
  31.    };
  32.   };
  33.  
  34.  
  35.   {
  36.    int N = 1;
  37.    double X[] = { 0.906 };
  38.    int incX = 1;
  39.    double Y[] = { 0.373 };
  40.    int incY = -1;
  41.    double expected1[] = { 0.373 };
  42.    double expected2[] = { 0.906 };
  43.    cblas_dswap(N, X, incX, Y, incY);
  44.    {
  45.      int i;
  46.      for (i = 0; i < 1; i++) {
  47.        gsl_test_rel(X[i], expected1[i], dbleps, "dswap(case 90)");
  48.      }
  49.    };
  50.    {
  51.      int i;
  52.      for (i = 0; i < 1; i++) {
  53.        gsl_test_rel(Y[i], expected2[i], dbleps, "dswap(case 91)");
  54.      }
  55.    };
  56.   };
  57.  
  58.  
  59.   {
  60.    int N = 1;
  61.    float X[] = { -0.316f, -0.529f };
  62.    int incX = 1;
  63.    float Y[] = { -0.313f, 0.363f };
  64.    int incY = -1;
  65.    float expected1[] = { -0.313f, 0.363f };
  66.    float expected2[] = { -0.316f, -0.529f };
  67.    cblas_cswap(N, X, incX, Y, incY);
  68.    {
  69.      int i;
  70.      for (i = 0; i < 1; i++) {
  71.        gsl_test_rel(X[2*i], expected1[2*i], flteps, "cswap(case 92) real");
  72.        gsl_test_rel(X[2*i+1], expected1[2*i+1], flteps, "cswap(case 92) imag");
  73.      };
  74.    };
  75.    {
  76.      int i;
  77.      for (i = 0; i < 1; i++) {
  78.        gsl_test_rel(Y[2*i], expected2[2*i], flteps, "cswap(case 93) real");
  79.        gsl_test_rel(Y[2*i+1], expected2[2*i+1], flteps, "cswap(case 93) imag");
  80.      };
  81.    };
  82.   };
  83.  
  84.  
  85.   {
  86.    int N = 1;
  87.    double X[] = { 0.512, -0.89 };
  88.    int incX = 1;
  89.    double Y[] = { -0.225, -0.511 };
  90.    int incY = -1;
  91.    double expected1[] = { -0.225, -0.511 };
  92.    double expected2[] = { 0.512, -0.89 };
  93.    cblas_zswap(N, X, incX, Y, incY);
  94.    {
  95.      int i;
  96.      for (i = 0; i < 1; i++) {
  97.        gsl_test_rel(X[2*i], expected1[2*i], dbleps, "zswap(case 94) real");
  98.        gsl_test_rel(X[2*i+1], expected1[2*i+1], dbleps, "zswap(case 94) imag");
  99.      };
  100.    };
  101.    {
  102.      int i;
  103.      for (i = 0; i < 1; i++) {
  104.        gsl_test_rel(Y[2*i], expected2[2*i], dbleps, "zswap(case 95) real");
  105.        gsl_test_rel(Y[2*i+1], expected2[2*i+1], dbleps, "zswap(case 95) imag");
  106.      };
  107.    };
  108.   };
  109.  
  110.  
  111.   {
  112.    int N = 1;
  113.    float X[] = { 0.336f };
  114.    int incX = -1;
  115.    float Y[] = { -0.431f };
  116.    int incY = 1;
  117.    float expected1[] = { -0.431f };
  118.    float expected2[] = { 0.336f };
  119.    cblas_sswap(N, X, incX, Y, incY);
  120.    {
  121.      int i;
  122.      for (i = 0; i < 1; i++) {
  123.        gsl_test_rel(X[i], expected1[i], flteps, "sswap(case 96)");
  124.      }
  125.    };
  126.    {
  127.      int i;
  128.      for (i = 0; i < 1; i++) {
  129.        gsl_test_rel(Y[i], expected2[i], flteps, "sswap(case 97)");
  130.      }
  131.    };
  132.   };
  133.  
  134.  
  135.   {
  136.    int N = 1;
  137.    double X[] = { 0.764 };
  138.    int incX = -1;
  139.    double Y[] = { -0.293 };
  140.    int incY = 1;
  141.    double expected1[] = { -0.293 };
  142.    double expected2[] = { 0.764 };
  143.    cblas_dswap(N, X, incX, Y, incY);
  144.    {
  145.      int i;
  146.      for (i = 0; i < 1; i++) {
  147.        gsl_test_rel(X[i], expected1[i], dbleps, "dswap(case 98)");
  148.      }
  149.    };
  150.    {
  151.      int i;
  152.      for (i = 0; i < 1; i++) {
  153.        gsl_test_rel(Y[i], expected2[i], dbleps, "dswap(case 99)");
  154.      }
  155.    };
  156.   };
  157.  
  158.  
  159.   {
  160.    int N = 1;
  161.    float X[] = { -0.239f, 0.361f };
  162.    int incX = -1;
  163.    float Y[] = { 0.149f, 0.347f };
  164.    int incY = 1;
  165.    float expected1[] = { 0.149f, 0.347f };
  166.    float expected2[] = { -0.239f, 0.361f };
  167.    cblas_cswap(N, X, incX, Y, incY);
  168.    {
  169.      int i;
  170.      for (i = 0; i < 1; i++) {
  171.        gsl_test_rel(X[2*i], expected1[2*i], flteps, "cswap(case 100) real");
  172.        gsl_test_rel(X[2*i+1], expected1[2*i+1], flteps, "cswap(case 100) imag");
  173.      };
  174.    };
  175.    {
  176.      int i;
  177.      for (i = 0; i < 1; i++) {
  178.        gsl_test_rel(Y[2*i], expected2[2*i], flteps, "cswap(case 101) real");
  179.        gsl_test_rel(Y[2*i+1], expected2[2*i+1], flteps, "cswap(case 101) imag");
  180.      };
  181.    };
  182.   };
  183.  
  184.  
  185.   {
  186.    int N = 1;
  187.    double X[] = { -0.171, -0.936 };
  188.    int incX = -1;
  189.    double Y[] = { 0.495, -0.835 };
  190.    int incY = 1;
  191.    double expected1[] = { 0.495, -0.835 };
  192.    double expected2[] = { -0.171, -0.936 };
  193.    cblas_zswap(N, X, incX, Y, incY);
  194.    {
  195.      int i;
  196.      for (i = 0; i < 1; i++) {
  197.        gsl_test_rel(X[2*i], expected1[2*i], dbleps, "zswap(case 102) real");
  198.        gsl_test_rel(X[2*i+1], expected1[2*i+1], dbleps, "zswap(case 102) imag");
  199.      };
  200.    };
  201.    {
  202.      int i;
  203.      for (i = 0; i < 1; i++) {
  204.        gsl_test_rel(Y[2*i], expected2[2*i], dbleps, "zswap(case 103) real");
  205.        gsl_test_rel(Y[2*i+1], expected2[2*i+1], dbleps, "zswap(case 103) imag");
  206.      };
  207.    };
  208.   };
  209.  
  210.  
  211.   {
  212.    int N = 1;
  213.    float X[] = { -0.405f };
  214.    int incX = -1;
  215.    float Y[] = { -0.213f };
  216.    int incY = -1;
  217.    float expected1[] = { -0.213f };
  218.    float expected2[] = { -0.405f };
  219.    cblas_sswap(N, X, incX, Y, incY);
  220.    {
  221.      int i;
  222.      for (i = 0; i < 1; i++) {
  223.        gsl_test_rel(X[i], expected1[i], flteps, "sswap(case 104)");
  224.      }
  225.    };
  226.    {
  227.      int i;
  228.      for (i = 0; i < 1; i++) {
  229.        gsl_test_rel(Y[i], expected2[i], flteps, "sswap(case 105)");
  230.      }
  231.    };
  232.   };
  233.  
  234.  
  235.   {
  236.    int N = 1;
  237.    double X[] = { -0.761 };
  238.    int incX = -1;
  239.    double Y[] = { -0.585 };
  240.    int incY = -1;
  241.    double expected1[] = { -0.585 };
  242.    double expected2[] = { -0.761 };
  243.    cblas_dswap(N, X, incX, Y, incY);
  244.    {
  245.      int i;
  246.      for (i = 0; i < 1; i++) {
  247.        gsl_test_rel(X[i], expected1[i], dbleps, "dswap(case 106)");
  248.      }
  249.    };
  250.    {
  251.      int i;
  252.      for (i = 0; i < 1; i++) {
  253.        gsl_test_rel(Y[i], expected2[i], dbleps, "dswap(case 107)");
  254.      }
  255.    };
  256.   };
  257.  
  258.  
  259.   {
  260.    int N = 1;
  261.    float X[] = { 0.853f, 0.146f };
  262.    int incX = -1;
  263.    float Y[] = { 0.009f, -0.178f };
  264.    int incY = -1;
  265.    float expected1[] = { 0.009f, -0.178f };
  266.    float expected2[] = { 0.853f, 0.146f };
  267.    cblas_cswap(N, X, incX, Y, incY);
  268.    {
  269.      int i;
  270.      for (i = 0; i < 1; i++) {
  271.        gsl_test_rel(X[2*i], expected1[2*i], flteps, "cswap(case 108) real");
  272.        gsl_test_rel(X[2*i+1], expected1[2*i+1], flteps, "cswap(case 108) imag");
  273.      };
  274.    };
  275.    {
  276.      int i;
  277.      for (i = 0; i < 1; i++) {
  278.        gsl_test_rel(Y[2*i], expected2[2*i], flteps, "cswap(case 109) real");
  279.        gsl_test_rel(Y[2*i+1], expected2[2*i+1], flteps, "cswap(case 109) imag");
  280.      };
  281.    };
  282.   };
  283.  
  284.  
  285.   {
  286.    int N = 1;
  287.    double X[] = { -0.228, 0.386 };
  288.    int incX = -1;
  289.    double Y[] = { 0.988, -0.084 };
  290.    int incY = -1;
  291.    double expected1[] = { 0.988, -0.084 };
  292.    double expected2[] = { -0.228, 0.386 };
  293.    cblas_zswap(N, X, incX, Y, incY);
  294.    {
  295.      int i;
  296.      for (i = 0; i < 1; i++) {
  297.        gsl_test_rel(X[2*i], expected1[2*i], dbleps, "zswap(case 110) real");
  298.        gsl_test_rel(X[2*i+1], expected1[2*i+1], dbleps, "zswap(case 110) imag");
  299.      };
  300.    };
  301.    {
  302.      int i;
  303.      for (i = 0; i < 1; i++) {
  304.        gsl_test_rel(Y[2*i], expected2[2*i], dbleps, "zswap(case 111) real");
  305.        gsl_test_rel(Y[2*i+1], expected2[2*i+1], dbleps, "zswap(case 111) imag");
  306.      };
  307.    };
  308.   };
  309.  
  310.  
  311. }
  312.